﻿namespace RpcClient.Interface
{
    /// <summary>
    /// Tcc事务服务
    /// </summary>
    public interface IRpcTccTranService
    {
        void RegNoParamTran<Extend, TccEvent>(string name) where TccEvent : ITccEvent;
        void RegTran<T, Extend, TccEvent>()
            where T : class
            where TccEvent : ITccEvent;
        void RegTran<T, Extend, TccEvent>(string name)
            where T : class
            where TccEvent : ITccEvent;
        void RegTran<T, TccEvent>()
            where T : class
            where TccEvent : ITccEvent;
        void RegTran<T, TccEvent>(string name)
            where T : class
            where TccEvent : ITccEvent;
        void RegTran<TccEvent>(string name) where TccEvent : ITccEvent;
    }
}